;; The first three lines of this file were inserted by DrScheme. They record metadata
;; about the language level of this file in a form that our tools can easily process.
#reader(lib "htdp-advanced-reader.ss" "lang")((modname client-protocol) (read-case-sensitive #t) (teachpacks ((lib "universe.ss" "teachpack" "2htdp"))) (htdp-settings #(#t constructor repeating-decimal #t #t none #f ((lib "universe.ss" "teachpack" "2htdp")))))
;; CLIENT PROTOCOL ------- CLIENT PROTOCOL ------- ;;


;; A Client-package is a List of length 1, that contains the necessary data to pass to a server mid-game.
;; Unused fields are empty.

;; Phase 1 : (list Territory)
;; This territory passed is where the client is trying to place a reinforcement.

;; Phase 2a : either : (list Territory) : Indicative of where the current player wants to attack from.
;;                     (list true)      : Inidcates the player does not wish to attack, and merely progress phase.

;; Phase 2b : (list Territory) : Indicates where the current player wants to attack, from the territory previously defined.

;; Phase 3a : either : (list Territory) : Indicative of where the current player wants to reinforce from.
;;                     (list true)      : Inidcates the player does not wish to reinforce, and merely progress phase.

;; Phase 3b : (list Territory) : Indicates where the current player wants to reinforce, from the territory previously defined.

;; The server checks for validity at all times.